1 REM ********************************* 2 REM * VITALS 1541 * 3 REM ********************************* 4 REM * WILL CORLEY * 5 REM * 7551 TWILIGHT DR. * 6 REM * SACRAMENTO, CA * 7 REM * 95822 * 8 REM ********************************* 9 DC$="":FOR X=1 TO 44:READ A:DC$=DC$+CHR$(A):NEXT 10 POKE 53280,11:POKE 53281,12:PRINT "[147]" 11 I=512:K$=CHR$(0) 12 PRINT TAB(14) "VITALS 1541" 13 PRINT TAB(14) "[151][183][183][183][183][183][183][183][183][183][183][183]" 14 PRINT TAB(10)"(C) BY WILL CORLEY" 15 INPUT "[151]FILE TO ANALYZE";N$ 16 IF LEN(N$)>16 OR N$="" THEN RUN 17 CLOSE 15:OPEN 15,8,15,"I":GOSUB 49:TY$="P":A=1 18 OPEN 2,8,2,N$+","+TY$+",R" 19 INPUT#15,E:IF E<20 THEN 26 20 CLOSE 2 21 IF E<>64 THEN RUN 22 IF A=1 THEN TY$="S" 23 IF A=2 THEN TY$="U" 24 IF A=3 THEN RUN 25 A=A+1:GOTO 18 26 GET#2,A$:SL=PEEK(512):GET#2,A$:SH=PEEK(512) 27 PRINT#15,"M-R" CHR$(24) K$ CHR$(2) 28 GET#15,A$:T=PEEK(I):GET#15,A$:S=PEEK(I) 29 CLOSE 2:PRINT#15,"U;":OPEN 2,8,2,"#3":GOSUB 49:PRINT#15,"B-P";2;0 30 PRINT#2,DC$; 31 PRINT#15,"M-W" CHR$(6) CHR$(0) CHR$(2) CHR$(T) CHR$(S) 32 PRINT#15,"M-E" CHR$(0) CHR$(6):CLOSE 2 33 PRINT#15,"M-R" CHR$(10) K$ CHR$(2) 34 GET#15,A$:L=PEEK(I):GET#15,A$:H=PEEK(I) 35 PRINT#15,"M-R" CHR$(1) CHR$(3) CHR$(1) 36 GET#15,A$:BYTES=PEEK(I)-1 37 CLOSE 15 38 PRINT "[151]FILE TYPE: "; 39 IF TY$="P" THEN PRINT "PROGRAM" 40 IF TY$="S" THEN PRINT "SEQUENTIAL" 41 IF TY$="U" THEN PRINT "USER" 42 PRINT "[151]BLOCKS:" H*256+L 43 PRINT "[151]BYTES:" (H*256+L-1)*254+BYTES-1 44 IF TY$<>"P" THEN 46 45 PRINT "[151]START ADDRESS:"SH*256+SL 46 PRINT "[151]STARTING TRACK:"T 47 PRINT "[151]STARTING SECTOR:"S:GOSUB100 48 POKE 198,0:WAIT 198,1:GOTO 54 49 INPUT#15,E,E$,ET,ES:IF E<20 THEN RETURN 50 CLOSE 2:CLOSE 15 51 PRINT "DISK ERROR" 52 PRINT E,E$,ET;ES 53 TI$="000000":WAIT 161,1:RUN 54 PRINT "[147]" 55 PRINT" VITALS 1541 HAS BEEN RELEASED TO THE PUBLIC DOMAIN AS FREEWARE"; 56 PRINT".A DONATION OF $1,5 OR 10 WOULD GLADLY BE ACCEPTED!" 57 PRINT " SUPPORT THE FREEWARE CONCEPT!" 58 PRINT TAB(14)"WILL CORLEY" 59 PRINT TAB(11)"7551 TWILIGHT DR." 60 PRINT TAB(13)"SACRAMENTO,CA" 61 PRINT TAB(17)"95822" 62 TI$="000000":WAIT 161,1:RUN 63 DC$="":Y=49152:FOR X=1 TO 184:READ A:DC$=DC$+CHR$(A):NEXT:RETURN 64 DATA 169,0,133,10,133,11,169,176,133,0 65 DATA 165,0,48,252,169,128,133,0,165,0 66 DATA 48,252,230,10,208,2,230,11,173,0 67 DATA 3,208,1,96,133,6,173,1,3,133 68 DATA 7,24,144,218 100 REM ******************************* 101 REM * IMPROVED BY ZEITGEIST FOR * 102 REM * DA QL MAG PUBLICATION * 103 REM ******************************* 104 D=SH*256+SL 105 Z$="":B=16:FORG=0TO0:D=D/B:H=(D-INT(D))*B:Z$=CHR$(55+H+7*(H<10))+Z$ 106 G=-D:NEXT:PRINT"[151]HEX-ANFANG : $"Z$:RETURN